#ifndef MESHFILE
#define MESHFILE

#include <vector>
#include "gfmesh.hh"
#include "Base.h"
///Mesh class to hold model data
class Mesh
{
public:
	Mesh();
	///Converts and loads Cheng Wei's Gfmesh into Mesh
	Mesh(Gfmesh* m);
	~Mesh();
	///Loads a .ply file from disk
	void loadPlyFile(const std::string& filename);
	///Vertex array
	std::vector<Float> vertex;
	///Index(Indices) array
	std::vector<unsigned int> index;
	///Number of vertices
	unsigned int numVertices;
	///Number of polygons
	unsigned int numPolys;
	
	bool hasNormals;
	bool hasTexture;
	//OpenGL buffers IDs
	unsigned int vboID;
	unsigned int indexID;
};

#endif